fn main() {
    println!("=====布尔型=====");
    let mut is_true: bool = true;
    println!("is_true={}", is_true);

    let mut is_false: bool = false;
    println!("is_false={}", is_false);

    println!("=====字符型=====");
    let mut a = "a";
    println!("a={}", a);

    let mut b: char = '我';
    println!("b={}", b);

    println!("=====数字型=====");
    let mut c: i8 = -100;
    println!("c={}", c);

    let mut d: f32 = 0.009;
    println!("d={}", d);

    println!("=====自适应类型=====");
    let mut aaa: isize = -114514;
    println!("aaa={}", aaa);

    let mut bbb: usize = 114514;
    println!("bbb={}", bbb);

    println!("=====数组=====");
    let mut arr: [u32; 5] = [1, 2, 3, 4, 5];
    // let mut arr = [1, 2, 3, 4, 5 ];
    println!("数组0={}", arr[0]);

    println!("=====元组=====");
    let mut tup: (i32, f32, char) = (-3, 3.5, '我');
    println!("tup={}", tup.0);
    println!("tup={}", tup.1);
    println!("tup={}", tup.2);

    let (x, y, z) = tup;
    println!("x={}", x);
    println!("y={}", y);
    println!("z={}", z);

    println!("=====数据类型转换=====");
    let mut number1: i8 = 100;
    let mut number2 = number1 as i32;
    println!("number2={}", number2);


    let mut var1 = 10;
    let mut var2 = var1.to_string();
    println!("var2={}", var2);
}
